package com.kfm.base.array2;

import java.util.Arrays;

public class Demo9 {

    public static void main(String[] args) {
        /*
        给定一个整数数组，输入位置(下标) n 和值 k。将值 k 插入到数组的第 n 位并输出新数组的每一个元素。
         */
        int[] arr = {1, 2, 3, 4};

        int num = 6;
        int index = 4; // 下标
        // 新数组
        int[] arr1 = new int[arr.length + 1];

        // 判断下标是否有效
        if (index >= 0 && index <= arr.length){
            int count = 0; // 新数组元素的下标
            // 复制数组
            for (int i = 0; i < arr.length; i ++, count ++){
                if (count == index){ // 这就是要插入元素的位置
                    arr1[count] = num;
                    i --; // 旧数组的元素未被复制，所以再来一次
                } else {
                    arr1[count] = arr[i];
                }
            }

            if (index == arr.length){ // 末尾添加
                arr1[count] = num;
            }

            System.out.println(Arrays.toString(arr1));
        }
    }
}
